package cn.qingyun.gis.modules.building.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @Description: 楼宇摸排集客数据表实体对象
 * @Version: V1.0
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode(callSuper = false)
@TableName("building_gather")
@ApiModel(value = "BuildingGather对象", description = "BuildingGather对象")
public class BuildingGather implements Serializable {

    private static final long serialVersionUID = 1L;
    /**
     * id
     */
    @ApiModelProperty(value = "id")
    @TableId(value = "id", type = IdType.ASSIGN_UUID)
    private String id;

    /**
     * 城市
     */
    @ApiModelProperty(value = "城市")
    @Excel(name = "城市", width = 15)
    private String city;

    /**
     * 区
     */
    @ApiModelProperty(value = "区")
    @Excel(name = "区", width = 15)
    private String district;

    /**
     * 楼宇详细地址
     */
    @ApiModelProperty(value = "楼宇详细地址")
    @Excel(name = "楼宇详细地址", width = 15)
    private String address;

    /**
     * 经度
     */
    @ApiModelProperty(value = "经度")
    @Excel(name = "经度", width = 15)
    private BigDecimal lon;

    /**
     * 纬度
     */
    @ApiModelProperty(value = "纬度")
    @Excel(name = "纬度", width = 15)
    private BigDecimal lat;

    /**
     * 高德POI_Id
     */
    @ApiModelProperty(value = "高德POI_Id")
    @Excel(name = "高德POI_Id", width = 15)
    private String gdPoiId;

    /**
     * 置信度
     */
    @ApiModelProperty(value = "置信度")
    @Excel(name = "置信度", width = 15)
    private String confidence;

    /**
     * 名称
     */
    @ApiModelProperty(value = "名称")
    @Excel(name = "名称", width = 15)
    private String gatherName;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    @Excel(name = "创建时间", width = 15)
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /**
     * 修改时间
     */
    @ApiModelProperty(value = "修改时间")
    @Excel(name = "修改时间", width = 15)
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    @TableField(exist = false)
    @ApiModelProperty(value = "距离")
    private BigDecimal distance;

}
